Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Mina Signer developer documentation #590

Draft
wants to merge 12 commits into
base: main
Choose a base branch
from

Conversation

MartinMinkov
Copy link
Collaborator

@MartinMinkov MartinMinkov commented Sep 11, 2023

Question for the reviewer:

Mina Signer has multiple responsibilities in the Mina ecosystem. It can generate keypairs and sign payments/delegations for Mina. It can additionally sign payments created by o1js, such as zkApp transactions, field payloads and nullifiers.

  • Should one document contain all information related to Mina Signer?
  • If so, which section should this information live in? It has info useful for zkApps and node operators
  • If not, is having two separate pages for the same concept a worthwhile trade-off? Will maintenance be easier if we just had one page?

Resources
Mina Signer is in the o1js repo
https://github.com/o1-labs/o1js/blob/main/src/mina-signer/README.md

This commit introduces a new documentation file for the Mina Signer library. The documentation covers installation, usage, and examples for the library. It aims to provide developers with a comprehensive guide to integrating Mina Signer into their projects.
@vercel
Copy link

vercel bot commented Sep 11, 2023

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
docs2 ✅ Ready (Inspect) Visit Preview 💬 Add feedback Sep 13, 2023 9:20pm

feat(mina-signer.mdx): add nonce field to payment object to ensure uniqueness of transactions
…o1js

This commit adds a comprehensive guide on how to use Mina Signer with o1js for signing and verifying zkApp transactions. It includes a code snippet demonstrating the process and a tip advising when to use Mina Signer over o1js. This update is intended to provide better guidance for developers integrating Mina Signer into their projects.
This commit adds a new section to the Mina Signer documentation explaining how to sign and verify Field payloads. This is useful for developers who want to ensure their payloads have not been tampered with. The section includes code examples and notes on handling Field types from different libraries.
…rehensive documentation on zkApp transactions, explaining their purpose and usage with an example code snippet.
1. Specify that the installation command is for Mina Signer for better context.
2. Remove the definite article before Mina Signer for consistency.
3. Add explanation for the need to specify the network during Mina Signer initialization.
4. Move the default network information to a tip box for better visibility.
5. Specify that Mina Signer supports signing and verifying of arbitrary Field payloads for better understanding.
…rove clarity

1. Replace 'keys' with 'keypairs' for more accurate terminology.
2. Add information about broadcasting signed payments or delegations to the network via the Mina Daemon.
3. Add hyperlink to 'o1js' for better navigation and understanding.
4. Modify description of Mina Signer's integration with 'o1js' to include signing/verifying Field payloads.
5. Clarify that Mina Signer can sign a zkApp transaction that can easily be broadcasted with a Mina Daemon.
6. Remove 'Examples' section as it seems to be empty and unnecessary.
…f summary of the Mina Signer library to provide a clear and concise overview of the library's purpose and functionality
…tation

- Reworded several sentences for better readability and clarity.
- Organized the features of Mina Signer into a list for easier understanding.
- Made the instructions for specifying the network more explicit.
- Changed the headers to use '&' instead of '/' for consistency.
- Expanded on the explanation of nullifiers for better understanding.
- Made the instructions for generating a nullifier more explicit.
@MartinMinkov MartinMinkov marked this pull request as ready for review September 12, 2023 22:41
@MartinMinkov MartinMinkov requested a review from a team as a code owner September 12, 2023 22:41
@MartinMinkov
Copy link
Collaborator Author

@barriebyron Could you give this a first-pass review, please? Also, wdyt about the question posed in the description?

… readability

The backticks were removed from o1js to maintain consistency throughout the document and improve readability. The backticks are typically used for code snippets or commands, not for naming libraries or tools.
@barriebyron
Copy link
Contributor

@garwalsh can you familiarize yourself with the Mina Signer, and let's talk?
Who is the target reader of this doc?
What content does the zkApp dev and Node Operator need? who can advise on this content

@nicc and I talked, and we thought a first draft could place the content in the zkApps section with a link from the existing topic at https://docs.minaprotocol.com/node-operators/mina-signer

@barriebyron barriebyron marked this pull request as draft December 6, 2023 17:29
id: mina-signer
title: Mina Signer
description: A NodeJS/Browser-compatible JavaScript library for the Mina Protocol
---
Copy link
Member

@shimkiv shimkiv May 3, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
---
---
:::info
zkApp programmability is not yet available on the Mina **Mainnet**, but zkApps can now be deployed on the Mina **Devnet**.
:::
# Mina Signer

@@ -0,0 +1,288 @@
---
id: mina-signer
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
id: mina-signer
id: mina-signer
hide_title: true

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

DX: improve Mina Signer docs
3 participants